#ifndef ESTATISTICAS_H_
#define ESTATISTICAS_H_

/*
 * Estrtura para alocar dados estatísticos que servirão de saída para o programa, conforme requisitos.
 * - Nome do método -> LRU, FIFO ou RANDOM
 * - Nome do arquivo de entrada.
 * - Tamanho da memória física
 * - Tamanho da memória lógica
 * - Quantidade de páginas lidas
 * - Quantidade de páginas escritas
 * - Quantidade de "page faults"
 */
typedef struct {
	char* metodo;
	char* entrada;
	unsigned tamanhoMemoria;
	unsigned tamanhoPagina;
	unsigned paginasLidas;
	unsigned paginasEscritas;
	unsigned pageFault;
}Estatisticas;

/*
 * Método para iniciar a estrutura estatísticas.
 * Parâmetro 1: Estrutura Estatísticas (Estatisticas)
 * Parâmetro 2: Nome do método (char *)
 * Parâmetro 3: Nome do arquivo de entrada (char *)
 * Parâmetro 4: Tamanho da página (unsigned int)
 * Parâmetro 5: Tamanho da memória física (unsigned int)
 */
void iniciaEstatistica(Estatisticas *est, char *metodo, char *entrada, unsigned pagina, unsigned tamanho);

#endif /* ESTATISTICAS_H_ */
